const baseConfig = require('./client.base');
const WebpackParalleUglifyPlugin = require('webpack-parallel-uglify-plugin')
const BundleAnalyzerPlugin = require("webpack-bundle-analyzer");
const analyzerPort = require('../index').analyzerPort;

const config = {
    ...baseConfig,

    plugins: [
        new WebpackParalleUglifyPlugin({
            uglifyJS: {
                output: {
                    beautify: false, // 无需格式化
                    comments: false, // 不保留注释
                },
                compress: {
                    warnings: false, // 在UglifyJs删除没有用到的代码时不输出警告
                    drop_console: true, //  删除所有的 `console` 语句
                    collapse_vars: true, // 内嵌定义了但是只用到一次的变量
                    reduce_vars: true, // 提取出出现多次但是没有定义成变量去引用的静态值
                }
            }
        }),

        // 模块打包分析
        new BundleAnalyzerPlugin({
            analyzerPort
        })
    ],

    mode: 'production'
}

module.exports = config;